#MVC control层

#登陆注册相关业务,
# #python3自带hashlib 模块，直接导入
import hashlib
import dbutils
import utils

#注册
def register():
    username = input('请输入用户名：')
    passwd = input('请输入密码：')

    #1. 加密passwd
    md5_passwd = utils.get_md5(passwd)

    #2. 加密结果存储
    insert_passwd_sql = 'insert into bugcount.user values(null, %s, %s, null, null, null, null)'
    insert_user_args = username
    insert_passwd_args2 = md5_passwd

    #查看是否注册成功
    #返回值为list 0位为状态吗 1位为查询结果
    result_list = dbutils.execute_db_onesql(insert_passwd_sql, insert_user_args, insert_passwd_args2)
    print('type result listtest=======', result_list)
    response_code = result_list[0]
    if response_code == 200:
        print('注册成功，请进行登录')
    else:
        print('注册失败')


#登录
def login():
    username = input('请输入用户名：')
    passwd = input('请输入密码：')
    #判断是否登陆成功
    #1. 数据库获取数据
    get_userandpasswd_sql = 'select username, password from bugcount.user where username = %s'
    get_userandpasswd_arg = username
    result_list = dbutils.execute_db_onesql(get_userandpasswd_sql, get_userandpasswd_arg)

    #执行结果是一个元组
    print('type result list=======', result_list)
    response_userandpass = result_list[1]   #是个元组
    print("登陆查询结果= ", response_userandpass)

    #(('admin', 'pass'),) 元组是这个这种格式的
    search_username = response_userandpass[0][0] #用户名
    search_passwd = response_userandpass[0][1] #md5密码

    print('///////////////////////')
    print('用户输入user==', username)
    print('用户输入passs==', passwd)
    print('用户输入pass md5==', utils.get_md5(passwd))
    print('查询user==', search_username)
    print('查询paass==', search_passwd)

    #if username == search_username and utils.get_md5(passwd) == search_passwd:
    if username == search_username and utils.get_md5(passwd) == search_passwd:
        print('登录成功')
        return True
    else:
        print('用户名或者密码输入错误，登录失败')
        return False



